We must reduce the forWidth in the call to get_preferred_height()
with the border width, otherwise we might request a smaller height
that we actually need and overflow.
https://bugzilla.gnome.org/show_bug.cgi?id=696564
},
_getPreferredHeight: function(actor, forWidth, alloc) {
- let [minSize, naturalSize] = this.bin.get_preferred_height(forWidth);
+ let themeNode = this.actor.get_theme_node();
+ let borderWidth = themeNode.get_length('-arrow-border-width');
+ let [minSize, naturalSize] = this.bin.get_preferred_height(forWidth - 2 * borderWidth);
alloc.min_size = minSize;
alloc.natural_size = naturalSize;
this._adjustAllocationForArrow(false, alloc);